﻿using BitBenderGames;
using Cinemachine;
using com.yoozoo.gta.Extension;
using com.yoozoo.gta.Gameplay.PVE;
using com.yoozoo.gta.Tools.UI;
using com.youzu.warh.protocol;
using Extensions;
using External.UIParticle;
using Gameplay.PVE;
using Gameplay.PVE.Data;
using Gameplay.PVE.Effect;
using Gameplay.PVE.Entity;
using Gameplay.PVE.UI;
using Gameplay.PVE.Utils;
using Gameplay.RTS.Hud;
using ImageEffects;
using Neonagee.LocalPreferences;
using RootMotion.FinalIK;
using System;
using System.Collections.Generic;
using System.Net;
using System.Net.NetworkInformation;
using System.Net.Sockets;
using com.yoozoo.gta.Extension.UGUI.ScreenOrientationEx;
using Gameplay.PVE.Survivor;
using TMPro;
using UnityEngine;
using UnityEngine.Networking;
using UnityEngine.Playables;
using UnityEngine.Rendering;
using UnityEngine.Rendering.Universal;
using UnityEngine.Video;
using WorldMapBase.Tile.Pool;
using XLua;
using Yoozoo.Core.Common;
using Yoozoo.Core.Common.Tool;
using Yoozoo.Core.PathFinder;
using Yoozoo.Extension;
using Yoozoo.Framework.Network.Helpers;
using Yoozoo.Gameplay;
using Yoozoo.Gameplay.City;
using Yoozoo.Gameplay.GameUtils;
using Yoozoo.Gameplay.Hanging;
using Yoozoo.Gameplay.Liberty;
using Yoozoo.Gameplay.Managers;
using Yoozoo.Gameplay.RTS;
using Yoozoo.Gameplay.SDK;
using Yoozoo.Gta.Common;
using Yoozoo.Gta.Modules.Debugger;
using Yoozoo.Gta.ProjBuilder;
using Yoozoo.HitPoint;
using Yoozoo.HRP.Runtime;
using Yoozoo.Manager;
using Yoozoo.Managers;
using Yoozoo.Managers.ResourceManagement;
using Yoozoo.Managers.ResourceManagerV2.Framework.Resource;
using Yoozoo.Mars.Got;
using Yoozoo.Modules.CarScene;
using Yoozoo.Modules.CommanderScene;
using Yoozoo.Modules.Download;
using Yoozoo.Modules.Furnitures;
using Yoozoo.Modules.InnerCity;
using Yoozoo.Modules.MiniMap;
using Yoozoo.Modules.Update;
using Yoozoo.UI.YGUI;
using Yoozoo.Utils;
using BattleUnit = Gameplay.PVE.Entity.BattleUnit;
using BehaviorComponent = Gameplay.PVE.BehaviorComponent;
using DeckManager = Gameplay.PVE.Survivor.DeckManager;
using HudComponent = Gameplay.PVE.Survivor.HudComponent;
using RenderComponent = Gameplay.PVE.RenderComponent;
using UnitManager = Gameplay.PVE.Entity.UnitManager;

public static class GTALuaGenCustom
{
    //lua中要使用到C#库的配置，比如C#标准库，或者Unity API，第三方库等。
    [LuaCallCSharp] public static List<Type> LuaCallCSharp = new List<Type>()
    {
        typeof(Yoozoo.Managers.ResourceManagerV2.Runtime.ResLoader),
        typeof(Yoozoo.Managers.ResourceManagerV2.Runtime.LoadAssetHandler),
        typeof(Yoozoo.Managers.ResourceManagerV2.Runtime.UMTResource),
        typeof(HasAssetResult),
        typeof(Yoozoo.Gta.Common.GameHelper),
        typeof(Yoozoo.Managers.ResourceManagerV2.Runtime.ICancelable),
        typeof(Yoozoo.Framework.Managers.LuaManager),
        typeof(Yoozoo.UI.UIExpansion),
        typeof(Yoozoo.UI.LinkerData),
        typeof(Yoozoo.UI.ModuleData),
        typeof(UMT.Framework.Managers.HttpManager),
        typeof(UMT.Framework.Security.EncryptAES),
        typeof(DynamicLayerMgr),
        typeof(SampleLuaLayerMgr),
        typeof(WorldMapBase.LuaLODLayer),
        typeof(WorldMapBase.LuaLODLayerContainer),
        typeof(WorldMapBase.LuaDiscreteObjectLODLayer),
        typeof(WorldMapBase.Layer.DiscreteObjectLayer),
        typeof(WorldMapBase.Collision.CircleSimpleBoolCollisionData),
        typeof(WorldMapBase.Collision.CircleSetsCollisionData),
        typeof(WorldMapBase.Collision.NavimeshCollisionData),
        typeof(Yoozoo.Gameplay.GTAGameStart),
        typeof(WorldCameraManager),
        typeof(RTSLuaCallCSharpManager),
        typeof(GuiComponent),
        typeof(com.yoozoo.gta.Extension.UGUI.ScreenOrientationEx.ScreenOrientItem),
        //战斗相关临时
        typeof(BattleUnit),
        typeof(UnitData),
        typeof(BehaviorComponent),
        typeof(BattleComponennt),
        typeof(HudComponent),
        typeof(BattleMoveComponent),
        typeof(RenderComponent),
        typeof(SearchComponent),
        typeof(SkillDirectorComponennt),
        typeof(SurvivorManager),
        typeof(SurvivorDataManager),
        typeof(DeckManager),
        typeof(BattleHeroStatistic),
        typeof(BattleHeroAttribute),
        
        //战斗相关
        typeof(PveManager),
        typeof(UnitManager),
        typeof(OperationManager),
        typeof(PveFindPathManager),
        typeof(PveEffectManager),
        typeof(PveEffectController),
        typeof(ModelHitPoint),
        typeof(RpgFlyTextBuff),
        typeof(RpgBubbleSizeFitter),
        typeof(AimIK),
        typeof(ModelInTimeline),
        typeof(BattleUnitLog),
        typeof(PveFlyTextManager),
        typeof(DeckCircleController),
        typeof(RpgBattleSceneData),
        typeof(RpgBattleSceneEnemyPath),
        typeof(RpgShadow2D),
        typeof(AStarMgr),
        typeof(Gameplay.PVE.DeckManager),
        typeof(Gameplay.PVE.PveScene),
        typeof(Gameplay.PVE.PveGlobalVlues),
        typeof(DrawLineTool),
        typeof(ChainEffect),
        typeof(SectorCreator),
        typeof(BunkerHitPoint),
        typeof(BunkerSingleHitPoint),
        typeof(BunkerHitPointArea),
        typeof(BunkerHitPointCollider),
        typeof(BunkerHitPointType),
        typeof(LightmapData),
        typeof(LightmapSettings),
        typeof(UnitRootMotion),
        typeof(RpgGameObjectHelper),
        typeof(TMPWave),
        typeof(PveJoyStick),
        typeof(Gameplay.PVE.RpgUpdater),
        typeof(Gameplay.PVE.RpgWrap),
        typeof(RpgCameraViewCleaner),
        typeof(RenderSceneLight),
        typeof(AStarNodeInfo),
        typeof(RpgReportManager),
        typeof(BattleConfigManager),
        
        typeof(SDKManager),
        typeof(SuperSDKManagerHotUpdate),
        typeof(GameReStartManager),
        typeof(Yoozoo.Mars.Got.EventSystem),
        typeof(Yoozoo.Mars.Got.ClientEvent),
        typeof(WorldFlyText),
        typeof(MarchEntity),
        typeof(SandboxObjectMono),
        typeof(SandBoxUtils),
        typeof(TransformUtil),
        typeof(RectTransformUtility),
        typeof(RectTransformExtension),
        typeof(WorldMap.WorldMapUtility),
        typeof(MiniMapController),
        typeof(LodCastle),
        typeof(RotateModel),
        typeof(Environment),
        typeof(ClassManager),
        typeof(DebugForLua),
        typeof(DebugSetting),
        typeof(Coroutine_Runner),
        typeof(ModelInstaning),
        typeof(InnerCitySpriteHelper),
        typeof(Reporter),
        typeof(DebugAgent),
        
        typeof(Yoozoo.Managers.GameScene.Runtime.UMTGameScene),
        typeof(Yoozoo.Managers.GameScene.Runtime.GameSceneEntity),
        typeof(Yoozoo.Managers.GameScene.Runtime.Procedure.Core.ProcedureProgram),
        typeof(Yoozoo.Managers.GameScene.Runtime.Procedure.Core.ProcedureProgramLuaExtention),
        typeof(Yoozoo.Managers.GameScene.Runtime.Procedure.External.ProcedureLuaTable),
        typeof(Yoozoo.Managers.GameScene.Runtime.Procedure.External.ProcedureLuaFunction),
        typeof(Yoozoo.Managers.GameScene.Runtime.Procedure.External.ProcedureResourceLoad),
        typeof(Yoozoo.Managers.GameScene.Runtime.Record.RecorderGroup),
        typeof(Yoozoo.Managers.GameScene.Runtime.Record.Recorder),
        typeof(Yoozoo.Managers.ResourceManagerV2.Framework.Variable),
        typeof(WorldMapBase.WorldMapConfigData),
        typeof(WorldMapBase.WorldPerformance),
        typeof(WorldMapBase.Tile.Pool.WorldPoolManager),
        typeof(WorldDynamicPoolMgr),
        typeof(CommonPrefabPool),
        typeof(PoolCollectionManager),
        typeof(WorldMapFog),
        typeof(MapWonderArea),
        typeof(WorldEntry),
        typeof(WorldMapNew.WorldMapData),
        typeof(ArmyManager),
        typeof(MarchManager),
        typeof(ElementManager),
        typeof(RtsArenaManager),
        typeof(RtsExpeditionManager),
        typeof(RtsArenaTest),
        typeof(AppConfig),
        typeof(PathologicalGames.PrefabPool),
        typeof(PathologicalGames.SpawnPool),
        typeof(PoolMgr),
        typeof(TouchItem),
        // typeof(com.lh.demo.protocol.RtsMapResources,
        typeof(QualityTool),
        typeof(FogSystem),
        typeof(TranslationUtility),
        typeof(WorldMap.CameraController.CameraMoveLockMgr),
        typeof(AutoDestroy),
        typeof(TileCollideItem),
        typeof(TileCollideManager),
        typeof(DeviceAgent),
        typeof(GTAReceivedInfoHelper),
        typeof(NetStatusHelper),
        typeof(GpuHudFacade),

        typeof(UnityExtension),
        typeof(ObjectEx),
        typeof(GameObjectEx),
        typeof(ComponentEx),
        typeof(TextureEx),
        typeof(RectTransformEx),
        typeof(TransformEx),
        typeof(Extension.Clickable),
        typeof(Modules.Guide.Runtime.GuideMask),
        typeof(Modules.Guide.Runtime.GuideEvent),
        typeof(Modules.Guide.Runtime.GuideFollow),
        typeof(Modules.Guide.Runtime.GuideSceneLoad),
        typeof(Modules.Goto.Runtime.GotoMask),
        typeof(Modules.Goto.Runtime.GotoKey),
        typeof(FilterEmoji),
        typeof(AudioStudio.AudioManager),
        typeof(Yoozoo.Framework.Network.Helpers.DNSHelper),
        typeof(Yoozoo.Modules.InnerCity.LodBase),
        typeof(ReddotManager),
        typeof(ReddotNode),
        typeof(ReddotNodeItem),
        typeof(VideoWrapper),
        typeof(YImageWrap),
        typeof(AnimationWrap),
        typeof(EventTriggers),
        typeof(Yoozoo.Manager.FrameManager),
        typeof(PerformanceHitPoint),
        typeof(LineRendererGroup),
        typeof(ShrinkText),


        typeof(UITouchEffect),

        //DOTween-----
        typeof(DG.Tweening.DOTween),
        typeof(DG.Tweening.Ease),
        typeof(DG.Tweening.Tween),
        typeof(DG.Tweening.Sequence),
        typeof(DG.Tweening.Tweener),
        typeof(DG.Tweening.LoopType),
        typeof(DG.Tweening.PathMode),
        typeof(DG.Tweening.PathType),
        typeof(DG.Tweening.RotateMode),

        typeof(DG.Tweening.Core.TweenerCore<Vector3, Vector3, DG.Tweening.Plugins.Options.VectorOptions>),
        typeof(DG.Tweening.TweenCallback),
        typeof(DG.Tweening.TweenExtensions),
        typeof(DG.Tweening.TweenSettingsExtensions),
        typeof(DG.Tweening.ShortcutExtensions),
        typeof(DG.Tweening.DOTweenModuleUI),
        typeof(DG.Tweening.DOTweenModuleSprite),
        typeof(Component),
        typeof(Transform),
        typeof(Light),
        typeof(Material),
        typeof(Rigidbody),
        typeof(Camera),
        typeof(CanvasGroup),
        typeof(DG.Tweening.Core.TweenerCore<UnityEngine.Vector3, UnityEngine.Vector3,
            DG.Tweening.Plugins.Options.VectorOptions>),
        typeof(DG.Tweening.DOVirtual),
        //new ToLuaMenu.BindType(typeof(LineRenderer)).AddExtendType(typeof(DG.Tweening.ShortcutExtensions),
        //new ToLuaMenu.BindType(typeof(TrailRenderer)).AddExtendType(typeof(DG.Tweening.ShortcutExtensions),
        
        //Unity
        typeof(UnityEngine.GameObject),
        //new ToLuaMenu.BindType(typeof(UnityEngine.Transform),
        typeof(UnityEngine.RectTransform),
        typeof(UnityEngine.Rect),
        typeof(UnityEngine.MonoBehaviour),
        typeof(UnityEngine.Behaviour),
        typeof(UnityEngine.MeshRenderer),
        typeof(UnityEngine.SkinnedMeshRenderer),
        //new ToLuaMenu.BindType(typeof(UnityEngine.Camera),
        typeof(UnityEngine.PlayerPrefs),
        typeof(UnityEngine.Animation),
        typeof(UnityEngine.AnimationState),
        typeof(UnityEngine.AnimationClip),
        typeof(UnityEngine.Animator),
        typeof(UnityEngine.Input),
        typeof(UnityEngine.Renderer),
        typeof(UnityEngine.Screen),
        typeof(UnityEngine.BoxCollider),
        typeof(UnityEngine.PrimitiveType),
        typeof(UnityEngine.Physics),
        typeof(UnityEngine.SimulationMode),
        typeof(UnityEngine.Physics2D),
        typeof(UnityEngine.RaycastHit2D),
        typeof(UnityEngine.Application),
        typeof(UnityEngine.RuntimePlatform),
        typeof(UnityEngine.Mesh),
        typeof(UnityEngine.MeshFilter),
        typeof(UnityEngine.SpriteRenderer),
        typeof(UnityEngine.WaitWhile),
        typeof(UnityEngine.WaitUntil),
        typeof(UnityEngine.WaitForSeconds),
        typeof(UnityEngine.MaterialPropertyBlock),
        typeof(UnityEngine.Video.VideoPlayer),
        typeof(UnityEngine.Time),
        typeof(UnityEngine.Shader),
        typeof(UnityEngine.Texture2D),
        typeof(UnityEngine.TextureFormat),
        typeof(UnityEngine.Sprites.DataUtility),
        typeof(UnityEngine.RenderTexture),
        typeof(UnityEngine.Plane),
        typeof(List<UnityEngine.Vector3>),
        typeof(List<UnityEngine.Vector2>),
        typeof(List<UnityEngine.Color>),
        //typeof(UnityEngine.AI.NavMesh),
        //typeof(UnityEngine.AI.NavMeshDataInstance),
        typeof(List<int>),
        typeof(List<Light>),
        // typeof(UnityEngine.Quaternion,
        typeof(UnityWebRequest),
        typeof(UnityWebRequestTexture),
        typeof(DownloadHandlerTexture),
        typeof(VideoPlayer),
        typeof(AnimationEvent),
        typeof(LayerMask),
        typeof(Font),
        typeof(GraphicsSettings),
        typeof(QualityAdjusterSetting),
        typeof(QualityManager),
        typeof(QualityHelper),

        typeof(List<string>),
        typeof(System.IO.Path),
        typeof(List<Yoozoo.UI.LinkerData>),

        //UGUI
        typeof(UnityEngine.Events.UnityEvent),
        typeof(UnityEngine.UI.Button),
        typeof(UnityEngine.UI.Selectable),
        typeof(UnityEngine.UI.Text),
        typeof(UnityEngine.UI.Dropdown),
        typeof(UnityEngine.UI.MaskableGraphic),
        typeof(UnityEngine.UI.Image),
        typeof(UnityEngine.UI.Slider),
        typeof(UnityEngine.Canvas),
        typeof(UnityEngine.RenderMode),
        typeof(UnityEngine.CameraClearFlags),
        typeof(UnityEngine.LayerMask),
        typeof(UnityEngine.Sprite),
        typeof(UnityEngine.U2D.SpriteAtlas),
        typeof(UnityEngine.TextAsset),
        typeof(UnityEngine.UI.Shadow),
        //typeof(UnityEngine.CanvasGroup),
        typeof(UnityEngine.U2D.SpriteAtlas),
        typeof(UnityEngine.UI.GraphicRaycaster),
        typeof(UnityEngine.UI.LayoutRebuilder),
        typeof(UnityEngine.UI.LayoutElement),
        typeof(UnityEngine.RectOffset),
        typeof(UnityEngine.UI.VerticalLayoutGroup),
        typeof(UnityEngine.UI.HorizontalLayoutGroup),
        typeof(UnityEngine.UI.HorizontalOrVerticalLayoutGroup),
        typeof(UnityEngine.WaitUntil),
        typeof(UnityEngine.WaitWhile),
        typeof(UnityEngine.WaitForSeconds),
        typeof(SystemInfo),
        typeof(LightmapData),
        typeof(LightmapSettings),
        typeof(LightmapsMode),
        typeof(RenderSettings),
        typeof(FogMode),
        typeof(DefaultReflectionMode),
        typeof(AmbientMode),
        typeof(ReflectionProbe),
        typeof(ReflectionProbeMode),
        typeof(Cubemap),

        // YGUI
        typeof(Yoozoo.UI.YGUI.YImage),
        typeof(Yoozoo.UI.YGUI.YButton),
        typeof(Yoozoo.UI.YGUI.YList),
        typeof(Yoozoo.UI.YGUI.YSlider),
        typeof(Yoozoo.UI.YGUI.YToggle),
        typeof(Yoozoo.UI.YGUI.YDropDown),
        typeof(Yoozoo.UI.YGUI.YRichText),
        typeof(Yoozoo.UI.YGUI.YText),
        typeof(Yoozoo.UI.YGUI.YGridView),
        typeof(Yoozoo.UI.YGUI.YToggleGroup),
        typeof(Yoozoo.UI.YGUI.YModuleContainer),
        typeof(Yoozoo.UI.YGUI.YPrefabContainer),
        typeof(Yoozoo.UI.YGUI.YButton.ButtonClickedEvent),
        //new ToLuaMenu.BindType(typeof(Yoozoo.UI.YGUI.YButton.ButtonDragEvent),
        typeof(Yoozoo.Modules.InnerCity.CityUtils),
        typeof(ListView),
        typeof(ModulePool),
        typeof(ModulePoolManager),
        typeof(YAnimationEventBinder),
        typeof(YGraphicsColorSwitcher),
        typeof(ScreenOrientManager),

        // TMP
        typeof(TextMeshPro),
        typeof(VertexGradient),
        typeof(TMP_TextUtilities),
        typeof(TextMeshProUGUI),
        typeof(TMP_FontAsset),
        //UIParticle
        typeof(UIParticle),
        typeof(TextMeshProMaterialChanger),

        // HRP
        typeof(UniversalRenderPipelineAsset),
        typeof(UniversalAdditionalCameraData),
        typeof(Yoozoo.HRP.Runtime.HCamera),
        typeof(Yoozoo.HRP.Runtime.HCameraManager),
        typeof(Yoozoo.HRP.Runtime.HRPHelper),
        typeof(UniversalAdditionalCameraData),
        typeof(OWL.Rendering.HRP.HBaseRenderScene),
        typeof(OWL.Rendering.HRP.HOverlayRenderScene),
        typeof(HRPReflectionProbeHelper),
        

        typeof(Yoozoo.UI.Tools.StopwatchHelper),
        typeof(com.yoozoo.gta.Tools.UI.MarginScaler),
        typeof(System.Diagnostics.Stopwatch),
        typeof(Yoozoo.Utils.LuaUtils),
        typeof(Yoozoo.Gameplay.Utilities.LuaUtility),
        typeof(Yoozoo.Modules.InnerCity.CityScaleItem),
        typeof(PointInPolygon),
        typeof(WorldNavData),
        typeof(MaterialPropertyUtils),
        typeof(NotchHeightKeeper),
        typeof(TouchManager),
        typeof(LightController),
        typeof(LightElement),
        typeof(DynamicLightElement),
        typeof(PlanarReflection),
        typeof(QualityEnum),
        typeof(DeviceQuality),
        
        typeof(DownloadWhilePlayingManager),
        typeof(DownloadWhilePlayingManager.Status),
        typeof(PreDownloadManager),
        typeof(PreDownloadManager.Status),
        typeof(ResourceMode),
        typeof(SubPackageTool),
        
        //cinemachin
        typeof(Cinemachine.CinemachineVirtualCamera),
        typeof(Cinemachine.CinemachineBrain),
        typeof(Cinemachine.CinemachineBlendDefinition),
        typeof(CinemachineShot),
        typeof(CinemachineTransposer),
        typeof(CinemachineComposer),
        typeof(CinemachineBasicMultiChannelPerlin),
        typeof(CarTimelineController),
        typeof(CarEntityController),
        typeof(CarResLoader),
        typeof(CarPartController),
        
        typeof(PlayableAsset),
        typeof(PlayableBinding),
        //touch
        typeof(BitBenderGames.TouchWrapper),
        typeof(UnityEngine.Debug),
        typeof(FogMode),
        typeof(MaterialChanger),
        typeof(RotateCamera),
        typeof(NPinyin.PinYinHelper),
        typeof(FingerGesture),
        typeof(Room),
        
        // City
        typeof(CityManager),
        typeof(RoomData),
        typeof(HUDPoint),
        typeof(EffectPoint),
        typeof(CityFeatureConfig),
        typeof(HudFeature),
        typeof(GgameSceneConfig),
        typeof(SceneRenderData),
        typeof(RoomDataConfig),
        typeof(SceneSeparateManagerData),
        typeof(SceneObjectDisplay),
        typeof(CameraMoveComponent),
        typeof(CityFogComponent),
        typeof(CityIndustryObject),
        typeof(CityRenderSettingMgr),
        typeof(LightMapApply),
        typeof(CityFloorNodeData),
        typeof(CityFloorAreaData),
        typeof(CityFloorDataConfig),
        typeof(CityRootLoadComponent),
        typeof(CityHallLightColorController),
        typeof(CityBuildingPreShowBox),
        typeof(GgameGridGraph),
        typeof(DecorationManager),
        typeof(DecorationMeshData),
        
        typeof(MobileMedia.DragMoveScrollView),
        typeof(MobileMedia.CaptureImageComponent),
        typeof(MobileMedia.MobileMediaHelper),
        typeof(WebImageManager),
        
        typeof(SpriteFrameRadar),
        typeof(SpriteContentSizeFitter),
        typeof(SpriteRendererRadar),
        typeof(YImageRadar),
        typeof(TrapezoidImage),
        
        typeof(Yoozoo.Gameplay.Liberty.LuaCallFunctions),
        typeof(Yoozoo.Gameplay.Liberty.BlueprintManager),
        typeof(Yoozoo.Gameplay.Liberty.LibertyNpcManager),
        typeof(Yoozoo.Gameplay.Liberty.LibertyManager),
        typeof(Yoozoo.Gameplay.Liberty.Pool.LibertyPoolMgr),
        typeof(Yoozoo.Gameplay.Liberty.LibertySceneManager),
        typeof(Yoozoo.Gameplay.Liberty.PlayerController.PlayerControlModeMgr),
        typeof(Yoozoo.Gameplay.City.RoomIDDefiner),
        typeof(Yoozoo.Gameplay.Liberty.AI.AnimationState),
        typeof(Yoozoo.Gameplay.Liberty.AI.BattleState),

        typeof(SceneObjectLoadController),
        typeof(TreeType),
        typeof(SceneCameraDetector),
        typeof(SceneCameraExDetector),
        typeof(SceneTransformDetector),
        typeof(SceneTransformExDetector),

        typeof(City2dTouchManager),
        typeof(City4xFogComponent),
        typeof(CityWallComponent),
        typeof(HangingLevelTrigger),
        typeof(HangingAirWallMgr),
        typeof(AreaBlurSettings),
        typeof(ShadowCacheSettings),
        
        typeof(AstarPathUtils),
        typeof(GuideBlueprintManager),
        
        typeof(AirWallDefiner),
        typeof(Reporter),
        typeof(LoadingUtils),
        typeof(SmartResLoader),
        
        typeof(TimeUtils),
        
        // Reflection Wrap
        // Delegate
        typeof(Yoozoo.Managers.ResourceManagerV2.Framework.Resource.LoadAssetSuccessCallback),
        typeof(Yoozoo.Managers.ResourceManagerV2.Framework.Resource.LoadAssetFailureCallback),
        typeof(Yoozoo.Managers.ResourceManagerV2.Runtime.Res.ResLoadCompleteCallBack),
        typeof(BitBenderGames.MobileTouchCamera.DelegateOnCameraBound),
        typeof(UnityEngine.Application.AdvertisingIdentifierCallback),
        typeof(UnityEngine.Application.LowMemoryCallback),
        typeof(UnityEngine.Application.LogCallback),
        typeof(UnityEngine.RectTransform.ReapplyDrivenProperties),
        typeof(UnityEngine.Video.VideoPlayer.EventHandler),
        typeof(UnityEngine.Video.VideoPlayer.ErrorEventHandler),
        typeof(UnityEngine.Video.VideoPlayer.FrameReadyEventHandler),
        typeof(UnityEngine.Video.VideoPlayer.TimeEventHandler),
        typeof(UnityEngine.Font.FontTextureRebuildCallback),
        //typeof(UnityEngine.CanvasRenderer.OnRequestRebuild),
        typeof(DG.Tweening.TweenCallback),
        typeof(UnityEngine.Canvas.WillRenderCanvases),
        typeof(UnityEngine.UI.InputField.OnValidateInput),
        typeof(Yoozoo.UI.YGUI.YRichText.GetPrefab),
        typeof(Yoozoo.UI.YGUI.YRichText.ReleasePrefab),
        typeof(Yoozoo.UI.YGUI.YRichUnderlineText.GetPrefab),
        typeof(Yoozoo.UI.YGUI.YRichUnderlineText.ReleasePrefab),
        typeof(Yoozoo.Gameplay.gta.CameraShot.TextureChangeDelegate),
        typeof(UnityEngine.Camera.CameraCallback),
        typeof(Cinemachine.CinemachineVirtualCamera.CreatePipelineDelegate),
        typeof(Cinemachine.CinemachineVirtualCamera.DestroyPipelineDelegate),
        typeof(RootMotion.FinalIK.IKSolver.UpdateDelegate),
        typeof(RootMotion.FinalIK.IKSolver.IterationDelegate),

        // Enums
        typeof(System.Environment.SpecialFolder),
        typeof(System.Environment.SpecialFolderOption),
        typeof(WorldEntry.MapPointType),
        typeof(Yoozoo.Manager.TouchManager.RaycastTarget),
        typeof(UnityEngine.RectTransform.Edge),
        typeof(UnityEngine.RectTransform.Axis),
        typeof(UnityEngine.Texture2D.EXRFlags),
        typeof(UnityEngine.UI.ScrollRect.MovementType),
        typeof(UnityEngine.UI.ScrollRect.ScrollbarVisibility),
        typeof(UnityEngine.UI.GridLayoutGroup.Corner),
        typeof(UnityEngine.UI.GridLayoutGroup.Axis),
        typeof(UnityEngine.UI.GridLayoutGroup.Constraint),
        typeof(UnityEngine.UI.ContentSizeFitter.FitMode),
        typeof(UnityEngine.UI.InputField.ContentType),
        typeof(UnityEngine.UI.InputField.InputType),
        typeof(UnityEngine.UI.InputField.CharacterValidation),
        typeof(UnityEngine.UI.InputField.LineType),
        typeof(Yoozoo.UI.YGUI.YList.Direction),
        typeof(Yoozoo.UI.YGUI.YSlider.Direction),
        typeof(Yoozoo.UI.YGUI.YSlider.TextType),
        typeof(Yoozoo.UI.YGUI.YRichText.LineAlignment),
        typeof(Yoozoo.UI.YGUI.YRichUnderlineText.LineAlignment),
        typeof(Gameplay.PVE.AStarMgr.EShapeType),
        typeof(UnityEngine.Camera.GateFitMode),
        typeof(UnityEngine.Camera.FieldOfViewAxis),
        typeof(UnityEngine.Camera.StereoscopicEye),
        typeof(UnityEngine.Camera.MonoOrStereoscopicEye),
        typeof(Yoozoo.UI.YGUI.ListView.ListSelectionMode),
        typeof(Yoozoo.UI.YGUI.ListView.ListLayoutType),
        typeof(Yoozoo.UI.YGUI.ListView.VertAlignType),
        typeof(Yoozoo.UI.YGUI.ListView.AlignType),
        typeof(Yoozoo.UI.YGUI.ListView.ChildrenRenderOrder),
        typeof(Yoozoo.Modules.Download.DownloadWhilePlayingManager.Error),
        typeof(Yoozoo.Modules.Download.PreDownloadManager.Error),
        typeof(Cinemachine.CinemachineBrain.UpdateMethod),
        typeof(Cinemachine.CinemachineBrain.BrainUpdateMethod),
        typeof(Cinemachine.CinemachineBlendDefinition.Style),
        typeof(Cinemachine.CinemachineTransposer.BindingMode),
        typeof(Cinemachine.CinemachineTransposer.AngularDampingMode),
        typeof(Reporter._LogType),
        typeof(System.Reflection.BindingFlags),
        typeof(ReddotNode.ReddotNodeType),
        typeof(UnityEngine.UI.GraphicRaycaster.BlockingObjects),
        typeof(UnityEngine.UI.CanvasScaler.ScaleMode),
        typeof(UnityEngine.UI.CanvasScaler.ScreenMatchMode),
        typeof(UnityEngine.UI.CanvasScaler.Unit),
        typeof(UnityEngine.UI.Image.Type),
        typeof(UnityEngine.UI.Image.FillMethod),
        typeof(UnityEngine.UI.Image.OriginHorizontal),
        typeof(UnityEngine.UI.Image.OriginVertical),
        typeof(UnityEngine.UI.Image.Origin90),
        typeof(UnityEngine.UI.Image.Origin180),
        typeof(UnityEngine.UI.Image.Origin360),
        typeof(Yoozoo.UI.YGUI.YScrollRect.Direction),
        typeof(Yoozoo.UI.YGUI.YScrollRect.MovementType),
        typeof(Yoozoo.UI.YGUI.YScrollRect.ScrollbarVisibility),
        typeof(UnityEngine.UI.Selectable.Transition),
        typeof(Mopsicus.Plugins.MobileInputField.ReturnKeyType),
        typeof(Cinemachine.CinemachineVirtualCameraBase.StandbyUpdateMode),
        typeof(Cinemachine.CinemachineVirtualCameraBase.BlendHint),
        typeof(MarchEntity.SquareAction),

        // Types
        typeof(Yoozoo.Managers.ResourceManagerV2.Runtime.Res),
        typeof(WorldCameraManager.MyOptions),
        typeof(Yoozoo.Manager.TouchManager.TouchEvent),
        typeof(Yoozoo.Gta.Common.CommonSpriteManager),
        typeof(Yoozoo.Gta.Common.FlyAnimationMgr),
        typeof(Yoozoo.Gta.Common.FlyAnimationMgr.RPGHangingDropData),
        typeof(Yoozoo.Gta.Common.FlyAnimationMgr.RPGHangingDropParticle),
        typeof(Yoozoo.Modules.InnerCity.CityUnitMgr),
        typeof(Modules.Guide.Runtime.GuideSceneLoad.GudieScenePlayInfo),
        typeof(UnityEngine.Playables.PlayableDirector),
        typeof(UnityEngine.ColorUtility),
        typeof(UnityEngine.ParticleSystem.MinMaxCurve),
        typeof(UnityEngine.ParticleSystem.MainModule),
        typeof(UnityEngine.ParticleSystem.EmissionModule),
        typeof(UnityEngine.ParticleSystem.ShapeModule),
        typeof(UnityEngine.ParticleSystem.SubEmittersModule),
        typeof(UnityEngine.ParticleSystem.TextureSheetAnimationModule),
        typeof(UnityEngine.ParticleSystem.Particle),
        //typeof(UnityEngine.ParticleSystem.CollisionEvent),
        typeof(UnityEngine.ParticleSystem.Burst),
        typeof(UnityEngine.ParticleSystem.MinMaxGradient),
        typeof(UnityEngine.ParticleSystem.EmitParams),
        typeof(UnityEngine.ParticleSystem.PlaybackState),
        typeof(UnityEngine.ParticleSystem.Trails),
        typeof(UnityEngine.ParticleSystem.VelocityOverLifetimeModule),
        typeof(UnityEngine.ParticleSystem.LimitVelocityOverLifetimeModule),
        typeof(UnityEngine.ParticleSystem.InheritVelocityModule),
        typeof(UnityEngine.ParticleSystem.ForceOverLifetimeModule),
        typeof(UnityEngine.ParticleSystem.ColorOverLifetimeModule),
        typeof(UnityEngine.ParticleSystem.ColorBySpeedModule),
        typeof(UnityEngine.ParticleSystem.SizeOverLifetimeModule),
        typeof(UnityEngine.ParticleSystem.SizeBySpeedModule),
        typeof(UnityEngine.ParticleSystem.RotationOverLifetimeModule),
        typeof(UnityEngine.ParticleSystem.RotationBySpeedModule),
        typeof(UnityEngine.ParticleSystem.ExternalForcesModule),
        typeof(UnityEngine.ParticleSystem.NoiseModule),
        typeof(UnityEngine.ParticleSystem.CollisionModule),
        typeof(UnityEngine.ParticleSystem.TriggerModule),
        typeof(UnityEngine.ParticleSystem.LightsModule),
        typeof(UnityEngine.ParticleSystem.TrailModule),
        typeof(UnityEngine.ParticleSystem.CustomDataModule),
        typeof(UnityEngine.Profiling.Profiler),
        typeof(UnityEngine.CanvasRenderer),
        typeof(System.Convert),
        typeof(System.DBNull),
        typeof(System.IO.File),
        typeof(UnityEngine.UI.Graphic),
        typeof(UnityEngine.UI.Dropdown.OptionData),
        typeof(UnityEngine.UI.Dropdown.OptionDataList),
        typeof(UnityEngine.UI.Dropdown.DropdownEvent),
        typeof(UnityEngine.UI.ScrollRect),
        typeof(UnityEngine.UI.ScrollRect.ScrollRectEvent),
        typeof(UnityEngine.UI.GridLayoutGroup),
        typeof(UnityEngine.UI.LayoutGroup),
        typeof(UnityEngine.UI.ContentSizeFitter),
        //typeof(UnityEngine.UI.InputField),
        typeof(UnityEngine.UI.InputField.SubmitEvent),
        typeof(UnityEngine.UI.InputField.OnChangeEvent),
        typeof(Yoozoo.UI.YGUI.YImage.SetSpriteEvent),
        typeof(Yoozoo.UI.YGUI.YButton.ButtonDoubleClickedEvent),
        typeof(Yoozoo.UI.YGUI.YButton.ButtonLongClickedEvent),
        typeof(Yoozoo.UI.YGUI.YButton.ButtonLongPressedEvent),
        typeof(Yoozoo.UI.YGUI.YButton.ButtonDownEvent),
        typeof(Yoozoo.UI.YGUI.YButton.ButtonUpEvent),
        typeof(Yoozoo.UI.YGUI.YButton.ButtonInteractiveChangeEvent),
        typeof(Yoozoo.UI.YGUI.YButton.ButtonPointerExitEvent),
        typeof(Yoozoo.UI.YGUI.YButton.ButtonPointerEnterEvent),
        typeof(Yoozoo.UI.YGUI.YButton.ScaleTweenInfo),
        typeof(Yoozoo.UI.YGUI.YSlider.TweenCompleteEvent),
        typeof(Yoozoo.UI.YGUI.YSlider.SliderEvent),
        typeof(Yoozoo.UI.YGUI.YToggle.ToggleEvent),
        typeof(Yoozoo.UI.YGUI.YToggleGroup.ToggleGroupEvent),
        typeof(Yoozoo.UI.YGUI.YRichText.RichTextHrefEvent),
        typeof(Yoozoo.UI.YGUI.YRichUnderlineText),
        typeof(Yoozoo.UI.YGUI.YRichUnderlineText.RichTextHrefEvent),
        typeof(Yoozoo.UI.YGUI.YText.TweenCompleteEvent),
        typeof(Yoozoo.UI.YGUI.YTableView),
        typeof(Yoozoo.UI.YGUI.YScrollView),
        typeof(Yoozoo.UI.YGUI.YInputField),
        typeof(Yoozoo.Gameplay.YGUICustom.YEmojiText),
        typeof(Yoozoo.Gameplay.YGUICustom.YEmojiText.EmojiData),
        typeof(Yoozoo.Gameplay.YGUICustom.YCountdownComponent),
        typeof(MeshRendererWrap),
        typeof(TMPro.TMP_Text),
        typeof(Gameplay.PVE.PveCameraManager),
        typeof(Gameplay.PVE.BattleUnitLog.LogData),
        typeof(Gameplay.PVE.AStarMgr.Obstacle),
        typeof(Yoozoo.Manager.EventTracingManager),
        typeof(Yoozoo.Manager.IcmpPingPlugin),
        typeof(System.String),
        typeof(ParticleTimeGetter),
        typeof(AndroidHelper),
        typeof(MoviePlayer),
        typeof(UnityEngine.Camera.GateFitParameters),
        typeof(Yoozoo.UI.YGUI.ListView.ItemInfo),
        typeof(ImageEffects.LightController.LightControllerQualitySetting),
        typeof(Yoozoo.Gta.Extension.VideoPlayerHelper),
        typeof(UnityEngine.UI.Mask),
        typeof(Yoozoo.Modules.Download.DownloadWhilePlayingManager.Task),
        typeof(Yoozoo.Modules.Download.PreDownloadManager.Task),
        typeof(Yoozoo.Modules.TraceEvent.ApmReportManager),
        typeof(Cinemachine.CinemachineBrain.BrainEvent),
        typeof(Cinemachine.CinemachineBrain.VcamActivatedEvent),
        typeof(WebImageManager.ImageCache),
        typeof(Yoozoo.Gameplay.Liberty.LibertyNpcManager.LibertyNpcQualitySetting),
        typeof(Yoozoo.Gameplay.Liberty.BlueprintUtils),
        typeof(Yoozoo.Gameplay.City.CityAIManager),
        typeof(CityRealAiHUDBase),
        typeof(CityRealAiProgressBarHUD),
        typeof(CityRealAiCommodityHUD),
        typeof(CityRealAiBabeMoodHUD),
        typeof(com.yoozoo.gta.Extension.TextTranslator),
        typeof(com.yoozoo.gta.Extension.ChatAssistant),
        typeof(com.yoozoo.gta.Extension.EmotePlayer),
        typeof(Reporter.Sample),
        typeof(Reporter.Log),
        typeof(Yoozoo.Framework.Core.SingletonMono<ReddotManager>),
        typeof(Yoozoo.Framework.Core.Singleton<Yoozoo.Manager.EventTracingManager>),
        typeof(UnityEngine.UI.CanvasScaler),
        typeof(Yoozoo.UI.YEvents.UnityEvent2),
        typeof(Yoozoo.UI.YEvents.UnityEventBase2),
        typeof(Yoozoo.Manager.FrameUpdate),
        typeof(Yoozoo.Managers.GameScene.Runtime.Procedure.Internal.BaseProcedure),
        typeof(Yoozoo.Managers.NetworkV2.DataStruct.BasicPacket),
        typeof(Yoozoo.Framework.Core.SingletonMono<Yoozoo.Gta.Common.CommonSpriteManager>),
        typeof(Yoozoo.Managers.ResourceManagerV2.Runtime.VarUnityObject),
        typeof(Yoozoo.Managers.ResourceManagerV2.Framework.Variable<UnityEngine.Object>),
        typeof(Yoozoo.Framework.Core.SingletonMono<Yoozoo.Gameplay.Liberty.BlueprintManager>),
        typeof(UnityEngine.Coroutine),
        typeof(System.Collections.Generic.List<System.String>),
        typeof(System.Collections.Generic.List<Yoozoo.Gameplay.City.RoomFeature>),
        typeof(System.Collections.Generic.List<Yoozoo.Gameplay.City.RoomFeature>),
        typeof(Yoozoo.Gameplay.City.RoomFeature),
        typeof(System.Collections.Generic.List<Yoozoo.Gameplay.City.HudFeature>),
        typeof(System.Collections.Generic.List<Yoozoo.Gameplay.City.HudFeature>),
        typeof(System.Collections.Generic.List<Yoozoo.Gameplay.City.HUDPoint>),
        typeof(System.Collections.Generic.List<Yoozoo.Gameplay.City.HUDPoint>),
        typeof(UnityEngine.UI.MaskableGraphic.CullStateChangedEvent),
        typeof(UnityEngine.EventSystems.UIBehaviour),
        typeof(System.Collections.Generic.List<com.yoozoo.gta.Gameplay.PVE.SceneObjectDisplay>),
        typeof(System.Collections.Generic.List<com.yoozoo.gta.Gameplay.PVE.SceneObjectDisplay>),
        typeof(Yoozoo.Framework.Core.SingletonMono<Yoozoo.Gameplay.Liberty.Pool.LibertyPoolMgr>),
        typeof(Yoozoo.Gameplay.Liberty.AI.LibertyTrafficData),
        typeof(Yoozoo.Gameplay.Liberty.PlayerController.PlayerCameraController),
        typeof(Yoozoo.Gameplay.Liberty.PlayerController.PlayerInputController),
        typeof(Yoozoo.Gameplay.Liberty.MapSettingComponent),
        typeof(Yoozoo.UI.YGUI.ListViewItem),
        typeof(System.GC),
        typeof(System.Globalization.RegionInfo),
        typeof(Yoozoo.Managers.ResourceManagerV2.Runtime.ResourceComponent),
        typeof(Yoozoo.Framework.Core.SingletonMono<Yoozoo.Gta.Common.FlyAnimationMgr>),
        typeof(Yoozoo.UI.YGUI.YScrollRect.ButtonDragEvent),
        typeof(Yoozoo.UI.YGUI.YScrollRect.ScrollRectEvent),
        typeof(Yoozoo.Framework.Core.Singleton<Yoozoo.Manager.IcmpPingPlugin>),
        typeof(BitBenderGames.CameraComponent),
        typeof(BitBenderGames.TouchCameraController),
        typeof(System.Collections.Generic.List<Yoozoo.HRP.Runtime.HCamera>),
        typeof(Yoozoo.UI.YEvents.UnityEvent2<System.String>),
        typeof(Yoozoo.Gameplay.YGUICustom.YEmojiInputField),
        typeof(UnityEngine.Events.UnityEvent<System.String>),
        typeof(Mopsicus.Plugins.MobileInputField),
        typeof(ListViewSizeTraslator),
        typeof(ListViewTabRedDots),
        typeof(NestedScrollRect),
        typeof(com.yoozoo.gta.Extension.NativeKeyboardWidget),
        typeof(YTextColorStyleSwitcher),
        typeof(Yoozoo.UI.YGUI.ModulePoolItemBase),
        typeof(UnityEngine.Events.UnityEvent<System.Int32>),
        typeof(UnityEngine.Events.UnityEventBase),
        typeof(Yoozoo.UI.YEvents.UnityEvent2<System.Boolean>),
        typeof(UnityEngine.Events.UnityEvent<UnityEngine.Vector2>),
        typeof(Cinemachine.CinemachineVirtualCameraBase),
        typeof(Cinemachine.CinemachineVirtualCameraBase.TransitionParams),
        typeof(Cinemachine.LensSettings),
        typeof(System.Collections.Generic.List<UnityEngine.ReflectionProbe>),
        typeof(System.Collections.Generic.List<UnityEngine.Cubemap>),
        typeof(System.Collections.Generic.List<UnityEngine.MeshRenderer>),
        typeof(BitBenderGames.WrappedTouch),
        typeof(System.Array),
        typeof(System.Int32),
        typeof(System.Collections.Generic.List<UnityEngine.Transform>),
        typeof(UnityEngine.AnimatorOverrideController),
        typeof(UnityEngine.RuntimeAnimatorController),
        typeof(UnityEngine.Motion),
        typeof(RootMotion.FinalIK.IKSolverAim),
        typeof(RootMotion.FinalIK.IKSolverHeuristic),
        typeof(RootMotion.FinalIK.IKSolver),
        typeof(RootMotion.FinalIK.IKSolver.Point),
        typeof(RootMotion.FinalIK.IKSolver.Bone),
        typeof(RootMotion.FinalIK.IKSolver.Node),
        typeof(RootMotion.FinalIK.IK),
        typeof(RootMotion.SolverManager),
        typeof(Yoozoo.Framework.Core.SingletonMono<WorldCameraManager>),
        typeof(Yoozoo.Framework.Core.SingletonMono<WorldMapBase.Tile.Pool.PoolCollectionManager>),
        typeof(Yoozoo.Framework.Core.SingletonMono<WorldMapBase.Tile.Pool.WorldDynamicPoolMgr>),
        typeof(YScrollRectPreloader),
        typeof(DragScaleScrollRect),
        typeof(UnityEngine.Collider),
        typeof(UnityEngine.ParticleSystemRenderer),
        typeof(UnityEngine.Texture),
        typeof(LocalPrefs),
        typeof(DefineSymbolUtils),
        typeof(NestedScrollRectShield),

        //Spine
        typeof(Spine.Unity.SkeletonGraphic),
        typeof(Spine.AnimationState),
        typeof(Spine.TrackEntry),

        typeof(GuiManager),
        typeof(GpuHudFacade),
        //协议
        typeof(SCRoundFight),
        typeof(SiegeFightInfo),
        typeof(PlunderResResult),
        typeof(EffectElement),
        typeof(BattleMountUnit),
        typeof(MapUnit),
//        typeof(ElementResult),
        typeof(NormalAttackType),
        typeof(BattleMountUnitType),
        typeof(DisplayResource),
        typeof(Resource),
        typeof(TargetCoordinateType),
        
        typeof(ArenaBattleTroop),
        typeof(ArenaBattleCamp),
        
        typeof(PlayerReportInfo),
        typeof(Yoozoo.Gameplay.Liberty.PlayerController.ControlMode),
        typeof(Yoozoo.Gameplay.Liberty.PlayerController.EnterExitCarState),
        
        typeof(Yoozoo.Gameplay.Liberty.StreetEvent.StreetEventManager),
        typeof(Yoozoo.Gameplay.Liberty.PlayerController.PlayerVehicleBehaviourMgr),
        typeof(Yoozoo.Gameplay.Liberty.PlayerController.PlayerStaminaBar),
        typeof(com.yoozoo.gta.AllianMarkTranslate),
        typeof(NetworkInterface),
        typeof(IPInterfaceProperties),
        typeof(IPAddressCollection),
        typeof(NetworkInterfaceType),
        typeof(Dns),
        typeof(IPHostEntry),
        typeof(IPAddress),
        typeof(AddressFamily),
        typeof(com.yoozoo.gta.Art.CarScene.RedarChart),
        typeof(com.yoozoo.gta.Art.TrainStationTool),
    };

    //C#静态调用Lua的配置（包括事件的原型），仅可以配delegate，interface
    [CSharpCallLua] public static List<Type> CSharpCallLua = new List<Type>()
    {
        typeof(Func<bool>),
        typeof(Func<int>),
        // for ListView.ItemProvider
        typeof(Func<int, string>),
        typeof(Action<int, byte[]>),//for SDK/MsgSecurity
        typeof(Action<Vector2>),
        typeof(Action<float>),
        typeof(Func<int,string>),
        typeof(Action<AnimationEvent>),
        typeof(Action<QualityEnum>),
        typeof(DG.Tweening.TweenCallback),
        typeof(Yoozoo.Managers.NetworkV2.Core. NetDelegates.ChannelDelegates.NetworkChannelShutDownHandler),
        typeof(Yoozoo.Managers.NetworkV2.Core. NetDelegates.ChannelDelegates.NetworkChannelStartUpHandler),
        typeof(Action<float, float>),
        typeof(Action<string, bool>),
        typeof(Action<Texture2D, int>),
        typeof(Action<UnityEngine.ScreenOrientation>),
    };

    //黑名单
    [BlackList] public static List<List<string>> BlackList = new List<List<string>>()
    {
        new List<string>() {"UnityEngine.Input", "IsJoystickPreconfigured", "System.String"},
        new List<string>() {"UnityEngine.MeshRenderer", "scaleInLightmap"},
        new List<string>() {"UnityEngine.MeshRenderer", "receiveGI"},
        new List<string>() {"UnityEngine.MeshRenderer", "stitchLightmapSeams"},
        new List<string>() { "UnityEngine.ParticleSystemRenderer", "supportsMeshInstancing"},
        new List<string>() { "UnityEngine.Texture", "imageContentsHash"},
        new List<string>() { "UnityEngine.UI.Graphic", "OnRebuildRequested"},
        new List<string>() {"UnityEngine.Physics", "Raycast", "UnityEngine.Ray", "System.Single", "System.Int32"},
        new List<string>() {"UnityEngine.Rendering.Universal.UniversalRenderPipelineAsset", "packagePath"},
        new List<string>() {"UnityEngine.Rendering.Universal.UniversalRenderPipelineAsset", "editorResourcesGUID"},
        new List<string>() {"UnityEngine.Rendering.Universal.UniversalRenderPipelineAsset", "Create", "UnityEngine.Rendering.Universal.ScriptableRendererData"},
        
        new List<string>() {"UnityEngine.Material", "IsChildOf","UnityEngine.Material"},
        new List<string>() {"UnityEngine.Material", "RevertAllPropertyOverrides"},
        new List<string>() {"UnityEngine.Material", "IsPropertyOverriden","System.Int32"},
        new List<string>() {"UnityEngine.Material", "IsPropertyOverriden","System.String"},
        new List<string>() {"UnityEngine.Material", "IsPropertyLocked","System.Int32"},
        new List<string>() {"UnityEngine.Material", "IsPropertyLocked","System.String"},
        new List<string>() {"UnityEngine.Material", "IsPropertyLockedByAncestor","System.Int32"},
        new List<string>() {"UnityEngine.Material", "IsPropertyLockedByAncestor","System.String"},
        new List<string>() {"UnityEngine.Material", "SetPropertyLock", "System.String","System.Boolean"},
        new List<string>() {"UnityEngine.Material", "SetPropertyLock", "System.Int32","System.Boolean"},
        new List<string>() {"UnityEngine.Material", "ApplyPropertyOverride","UnityEngine.Material","System.Int32","System.Boolean"},
        new List<string>() {"UnityEngine.Material", "ApplyPropertyOverride","UnityEngine.Material","System.String","System.Boolean"},
        new List<string>() {"UnityEngine.Material", "RevertPropertyOverride","System.Int32"},
        new List<string>() {"UnityEngine.Material", "RevertPropertyOverride","System.String"},
        new List<string>() {"UnityEngine.Material", "parent"},
        new List<string>() {"UnityEngine.Material", "isVariant"},
        
        new List<string>() { "UnityEngine.Rendering.GraphicsSettings", "videoShadersIncludeMode"},

        new List<string>() { "AudioStudio.AudioManager", "OnPlayAudio"},

        //new List<string>() { "Debug", "Log","System.Object","UnityEngine.Object"},
        //new List<string>() { "Debug", "LogWarning","System.Object","UnityEngine.Object"},
        //new List<string>() { "Debug", "LogError","System.Object","UnityEngine.Object"},
        //new List<string>() { "Debug", "DrawLine","UnityEngine.Vector3","UnityEngine.Vector3","UnityEngine.Color","System.Single","System.Boolean"},
        //new List<string>() { "Debug", "DrawRay","UnityEngine.Vector3","UnityEngine.Vector3","UnityEngine.Color","System.Single","System.Boolean"},
        //new List<string>() { "Debug", "Assert","System.Boolean"},
        //new List<string>() { "Debug", "Assert","System.Boolean","System.String"},

        new List<string>() { "Yoozoo.Managers.ResourceManagerV2.Runtime.ResourceComponent", "RegisterSpriteAtlas"},
        
        new List<string>() { "Yoozoo.Framework.Network.Helpers.DNSHelper", "OnGetServerIpInfo", "Yoozoo.Framework.Network.Helpers.IpData"},
    };
}
